package com.ktgj.flight.domain.InterfaceEntity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

public class MoOrderChangeRequest extends MoRequest implements Serializable {
    public MoOrderChangeRequest()
    {
        this.ListChangeSegementInfo = new ArrayList<>();

    }

    /**
     * 订单号
     */
    public String OrderId;

    /// <summary>
    /// 可改航班指定查询接口返回的ProductID
    /// </summary>
    public String ProductID;

    /// <summary>
    /// 支付的改签单号 
    /// </summary>
    public String ChangeOrderID;

    /// <summary>
    /// 付方式   DirectPayPC,PC即时扣款;DirectPayH5,H5即时扣款;ChargeAgent支付宝代扣 Others,其他 （非航 变改签则必传）
    /// </summary>
    public String ChargeType;

    /// <summary>
    /// 是否最新版本(兼容)   默认传true(一定要小写)
    /// </summary>
    public Boolean IsNewVersion;

    /// <summary>
    /// 来源 默认Online
    /// </summary>
    public String Source;

    /**
     * 机票费用
     */
    public BigDecimal TicketFee;

    /// <summary>
    /// 调整费用
    /// </summary>
    public BigDecimal AdjustmentFee;

    /**
     * 支付总金额
     */
    public BigDecimal PayAmount;

    /// <summary>
    /// 是否确认发送短信
    /// </summary>
    public Boolean ConfirmationRequired;

    /**
     * 航段信息
     */
    public List<ChangeSegementInfo> ListChangeSegementInfo;

    /// <summary>
    /// 传true则表示为航变改签,false为非航变改签
    /// </summary>
    public Boolean IsFree;

    /// <summary>
    /// 用户是否已经扣款完毕
    /// </summary>
    public Boolean IsPayFinish;

    /// <summary>
    /// 申请改期请求XML（从oracle读取）
    /// </summary>
    public String RequestXml;

    /// <summary>
    /// 原航班信息
    /// </summary>
    public ChangeAirOriDest ChangeAirOriDest;

    /// <summary>
    /// 改期后航班信息
    /// </summary>
    public ChangeAirOriDest NewChangeAirOriDest;


    /// <summary>
    /// 乘客信息
    /// </summary>
    public List<ChangePassenger> ChangePassenger;

    /// <summary>
    /// 改期类型
    /// </summary>
    public int changeType;

    /**
     * 票号
     */
    public String ticketNo;

    /**
     * 渠道类型
     */
    public int channelType;

    /**
     * 新pnr
     */
    public String pnr;

    /**
     * 旧pnr
     */
    public String oldPnr;

    /**
     * 新订单号
     */
    public String newOrderId;
}
